<html xmlns="http://www.w3.org/1999/xhtml"  
      xmlns:h="http://java.sun.com/jsf/html"  
      xmlns:f="http://java.sun.com/jsf/core"  
      xmlns:p="http://primefaces.org/ui"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:pe="http://primefaces.org/ui/extensions"> 

    <h:form id="formCadastroProduto">
        <p:growl id="growl" showDetail="false"/>
        <h:inputHidden value="#{funcionarioControler.funcionario.id}"/>
        <h:panelGrid columns="4">

            <h:panelGrid columns="1">
                <h:outputText value="Código" style="font-weight: bold;"/>
                <p:inputText value="#{funcionarioControler.funcionario.id}" disabled="true" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.id}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Nome" style="font-weight: bold;"/>
                <p:inputText value="#{funcionarioControler.funcionario.nome}" required="true" requiredMessage="Informe o nome do funcionário!!" rendered="#{!funcionarioControler.alterando}">
                    <p:focus/>
                </p:inputText>
                <h:outputText value="#{funcionarioControler.funcionario.nome}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Cpf:" style="font-weight: bold;"/>
                <p:inputMask mask="999.999.999-99" value="#{funcionarioControler.funcionario.cpf}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.cpf}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Rg:" style="font-weight: bold;"/>
                <p:inputText value="#{funcionarioControler.funcionario.rg}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.rg}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Email:" style="font-weight: bold;"/>
                <p:inputText value="#{funcionarioControler.funcionario.email}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.email}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Telefone1:" style="font-weight: bold;"/>
                <p:inputMask mask="(99)9999-9999" value="#{funcionarioControler.funcionario.telefone1}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.telefone1}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Telefone2:" style="font-weight: bold;"/>
                <p:inputMask mask="(99)9999-9999" value="#{funcionarioControler.funcionario.telefone2}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.telefone2}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Celular:" style="font-weight: bold;"/>
                <p:inputMask mask="(99)9999-9999" value="#{funcionarioControler.funcionario.celular}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.celular}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Data de Nascimento:" style="font-weight: bold;"/>
                <p:calendar value="#{funcionarioControler.funcionario.dataNascimento}" showOn="button" rendered="#{!funcionarioControler.alterando}">
                    <f:convertDateTime pattern="dd/MM/yyyy"/>
                </p:calendar>
                <h:outputText value="#{funcionarioControler.funcionario.dataNascimento}" rendered="#{funcionarioControler.alterando}">
                    <f:convertDateTime pattern="dd/MM/yyyy"/>
                </h:outputText>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Data de Admissão:" style="font-weight: bold;"/>
                <p:calendar value="#{funcionarioControler.funcionario.dataAdmissao}" showOn="button" rendered="#{!funcionarioControler.alterando}">
                    <f:convertDateTime pattern="dd/MM/yyyy"/> 
                </p:calendar>
                <h:outputText value="#{funcionarioControler.funcionario.dataAdmissao}" rendered="#{funcionarioControler.alterando}">
                    <f:convertDateTime pattern="dd/MM/yyyy"/>
                </h:outputText>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Data de Demissão:" style="font-weight: bold;"/>
                <p:calendar value="#{funcionarioControler.funcionario.dataDemissao}" showOn="button" rendered="#{!funcionarioControler.alterando}">
                    <f:convertDateTime pattern="dd/MM/yyyy"/> 
                </p:calendar>
                  <h:outputText value="#{funcionarioControler.funcionario.dataDemissao}" rendered="#{funcionarioControler.alterando}">
                    <f:convertDateTime pattern="dd/MM/yyyy"/>
                </h:outputText>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Cep:" style="font-weight: bold;"/>
                <p:inputMask mask="99999-999" value="#{funcionarioControler.funcionario.cep}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.cep}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Logradouro:" style="font-weight: bold;"/>
                <p:inputText value="#{funcionarioControler.funcionario.logradouro}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.logradouro}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Número:" style="font-weight: bold;"/>
                <p:inputText value="#{funcionarioControler.funcionario.numero}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.numero}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Bairro:" style="font-weight: bold;"/>
                <p:inputText value="#{funcionarioControler.funcionario.bairro}" rendered="#{!funcionarioControler.alterando}"/>
                <h:outputText value="#{funcionarioControler.funcionario.bairro}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Estado: " style="font-weight: bold;"/>
                <p:selectOneMenu value="#{funcionarioControler.funcionario.cidade.estado}" style="width: 150px;" rendered="#{!funcionarioControler.alterando}">
                    <f:selectItems value="#{funcionarioControler.retornaEstados()}" var="estado" itemValue="#{estado}" itemLabel="#{estado}"/> 
                    <p:ajax event="change" update="cidade" listener="#{funcionarioControler.carregaCidades()}"/>
                </p:selectOneMenu>
                <h:outputText value="#{funcionarioControler.funcionario.cidade.estado}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>

            <h:panelGrid columns="1">
                <h:outputText value="Cidade: " style="font-weight: bold;"/>
                <p:selectOneMenu value="#{funcionarioControler.funcionario.cidade.id}" id="cidade" style="width: 150px;" rendered="#{!funcionarioControler.alterando}">
                    <f:selectItem itemValue="0" itemLabel="Selecione"/>
                    <f:selectItems value="#{funcionarioControler.listCidades}" var="cid" itemValue="#{cid.id}" itemLabel="#{cid.cidade}"/> 
                </p:selectOneMenu>
                <h:outputText value="#{funcionarioControler.funcionario.cidade.cidade}" rendered="#{funcionarioControler.alterando}"/>
            </h:panelGrid>
        </h:panelGrid>
        <h:panelGrid columns="5">
            <p:commandButton value="Salvar" accesskey="S" action="#{funcionarioControler.salvar()}" update="@form" onclick="statusDialog.show();" 
                             onsuccess="statusDialog.hide();" rendered="#{!funcionarioControler.alterando}" />
            <p:commandButton action="#{funcionarioControler.alterar()}" onclick="carDialogFuncionario.show();" update="@form"
                             image="ui-icon ui-icon-pencil" title="alterar" value="Alterar" rendered="#{funcionarioControler.alterando}"/>
            <p:commandButton image="ui-icon ui-icon-close" title="excluir" value="Excluir" rendered="#{funcionarioControler.alterando}"
                             actionListener="#{funcionarioControler.setFuncionario(forn)}" onclick="confirmationExcluirFuncionario.show();"/>
            <p:commandButton value="Novo" accesskey="N" update="@form" action="#{funcionarioControler.inicializaObj()}" process="@this"/>
            <p:commandButton value="Cancelar" accesskey="C" onclick="carDialogFuncionario.hide()" process="@this"/>
        </h:panelGrid>
    </h:form>
</html>